Detecting the First Races in Parallel Programs with Ordered Synchronization
نویسندگان
چکیده
Detecting races is important for debugging shared-memory parallel programs, because the races result in unintended nondeterministic executions of the programs. Previous on-they techniques to detect races in programs with inter-thread coordination such as ordered synchronization cannot guarantee that the race detected rst is not preceded by events that also participate in a race. This paper presents a new two-pass on-they algorithm to detect the rst races in such parallel programs. Detecting the rst races is important in debug-ging, because the removal of such races may make other races disappear including those detected rst by the previous techniques. Therefore, this technique makes on-they race detection more eeective and practical in debugging parallel programs.
منابع مشابه
Detecting First Races using Trace and Replay for Parallel Programs with Random Synchronization
Debugging multithreaded or parallel programs is a hard problem due to unintended nondeterministic results of the program, called data races. Previous race detection techniques have limitations of coverage for synchronization constructs in detecting first races for parallel programs with random synchronizations. We present, in this paper, an efficient twopass algorithm to detect the first races ...
متن کاملFirst Race Detection in Parallel Program with Random Synchronization using Trace Information
Detecting data races in multi-threaded programs is a challenging problem in debugging, because the races could reveal nondeterministic program behavior in execution of such programs. Nondeterministic runtime effects of a race are hard to identify and it is difficult to decide whether the reported data races can appear or not in the actual program executions. Previous techniques for detecting ra...
متن کاملScalable Monitoring Technique for Detecting Races in Parallel Programs
Detecting races is important for debugging shared-memory parallel programs, because the races result in unintended nondeterministic executions of the programs. Previous on-they techniques to detect races have a bottleneck caused by the need to check or serialize all accesses to each shared variable in a program that may have nested parallelism with barrier synchronization. The new scalable moni...
متن کاملRace Condition Detection for Debugging Shared-memory Parallel Programs
This thesis addresses theoretical and practical aspects of the dynamic detecting and debugging of race conditions in shared-memory parallel programs. To reason about race conditions, we present a formal model that characterizes actual, observed, and potential behaviors of the program. The actual behavior precisely represents the program execution, the observed behavior represents partial inform...
متن کاملOn-the-fly Detection of the First Races in Programs with Nested Parallelism
Detecting races is important for debugging shared-memory parallel programs , because the races result in unintended nondeterministic executions of the programs. Previous on-they techniques to detect races in programs with nested parallelism cannot guarantee that the race detected rst is not preceded by events that also participate in a race (occurred rst in our terminology). This paper presents...
متن کامل